package controllers;

import java.sql.SQLException;
import java.util.List;

import models.Parcela;
import models.ParcelaVencida;
import repository.IRepositorioParcela;
import repository.RepositorioParcela;

public class ControllerParcela {

	private IRepositorioParcela parcelaRepositorio;

	// GETs e SETs do clienteRepositorio
	// --------------------------------------------------------------------
	public IRepositorioParcela getParcelaRepositorio() {
		return parcelaRepositorio;
	}

	public void setParcelaRepositorio(IRepositorioParcela parcelaRepositorio) {
		this.parcelaRepositorio = parcelaRepositorio;
	}

	// -------------------------------------------------------------------
	public ControllerParcela(RepositorioParcela repositorioParcela) {
		this.setParcelaRepositorio(repositorioParcela);
	}

	// -------------------------------------------------------------------
	public boolean inserir(Parcela parcela) throws SQLException {
		return parcelaRepositorio.inserirParcela(parcela);
	}

	// -------------------------------------------------------------------
	public boolean remover(int idPagamento) throws SQLException {
		return parcelaRepositorio.removerParcela(idPagamento);
	}

	// -------------------------------------------------------------------
	public boolean atualizar(Parcela parcela) throws SQLException {
		return parcelaRepositorio.atualizarParcela(parcela);
	}

	// -------------------------------------------------------------------
	public List<Parcela> listar() throws SQLException {
		return parcelaRepositorio.listarParcela();
	}

	// -------------------------------------------------------------------
	public List<Parcela> buscar(String chave) throws SQLException {
		return parcelaRepositorio.buscarParcela(chave);
	}

	// -------------------------------------------------------------------
	public List<Parcela> retonaParcelas(int idPagamento) throws SQLException {
		return parcelaRepositorio.retornaParcelas(idPagamento);
	}
	// -------------------------------------------------------------------
	public List<ParcelaVencida> parcelasVencidas() throws SQLException {
		return parcelaRepositorio.parcelasVencidas();
	}
	// -------------------------------------------------------------------
}
